import { AppDetailType, AppTypeEnum } from '@/types/app/type';

export const defaultApp: AppDetailType = {
  _id: '',
  name: 'AI',
  type: AppTypeEnum.simple,
  avatar: '/icon/logo.svg',
  intro: '',
  updateTime: new Date(),
  modules: [],
  chatConfig: {},
  teamId: '',
  tmbId: '',
  teamTags: [],
  edges: [],
  version: 'v2',
  // permission: new AppPermission(),
  inheritPermission: false,
};

// export const defaultOutLinkForm: OutLinkEditType = {
//   name: '',
//   responseDetail: false,
//   limit: {
//     QPM: 100,
//     maxUsagePoints: -1
//   }
// };

// export const defaultFeishuOutLinkForm: OutLinkEditType<FeishuAppType> = {
//   name: '',
//   limit: {
//     QPM: 100,
//     maxUsagePoints: -1
//   }
// };

export enum TTSTypeEnum {
  none = 'none',
  web = 'web',
  model = 'model',
}

export const SHORT_TEXT = 20;
export const LONG_TEXT = 200;

export enum AppCreateTypeEnum {
  agent = 'agent',
  workflow = 'workflow',
  template = 'template',
  fusion = 'fusion',
  mcp = 'mcp',
}

export enum AppCreateTitleEnum {
  agent = '创建空白应用',
  workflow = '创建工作流',
  template = '基于模板创建应用',
}

export enum UserRoleEnum {
  admin = 'admin',
  knowledge_manager = 'knowledge_manager',
  knowledge_reviewer = 'knowledge_reviewer',
}

export enum AppStatusEnum {
  pending = 'pending', //等待审核
  pass = 'pass', // 审核通过
  reject = 'reject', //驳回
  unpublished = 'unpublished', //未发布
}

export const defaultImgList = [
  'default',
  'aiaalogo',
  'aiaa',
  'edu',
  'ent',
  'med',
  'agentLogo2',
  'agentLogo3',
  'workflowLogo1',
  'workflowLogo2',
  'workflowLogo3',
  'fusionLogo1',
  'fusionLogo2',
  'fusionLogo3',
];

export const AppWorkbenchType = {
  manage: 'manager',
  public: 'public',
  market: 'market',
};

export enum AppType {
  agent = 'agent',
  fusion = 'fusion',
  workflow = 'workflow',
}

export const DEFAULT_ICON_SIZE = 100;
